package rddSummary.transition.value_type

import org.apache.spark.{SparkConf, SparkContext}

object test_flatMap {
  def main(args: Array[String]): Unit = {

    val conf = new SparkConf().setAppName("test").setMaster("local")
    val context = new SparkContext(conf)

    val dates = context.makeRDD(List(List(1, 2),3, List(1, 2, 3)), 3)

    /**
     * 将处理的数据进行扁平化后再进行映射处理，所以算子也称之为扁平映射
     * 小功能：将 List(List(1,2),3,List(4,5))进行扁平化操作
     */
    val value = dates.flatMap(
      data => {
        data match {
          case list: List[_] => list
          case dat => List(dat)
        }
      }
    )

    value.collect().foreach(println)

    context.stop()
  }

}
